package org.csu.mybigpro.controller;

import org.csu.mybigpro.common.CommonResponse;
import org.csu.mybigpro.domain.User;
import org.csu.mybigpro.service.AuthService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;


import java.util.Map;

@RestController
@RequestMapping("/api/teacher/profile")
public class TeacherProfileController {

    @Autowired
    private AuthService authService; // 我们复用AuthService来处理用户信息

    /**
     * 获取当前登录教师的个人信息（包括人脸数据）
     */
    @GetMapping
    public CommonResponse<User> getProfile() {
        // 在真实项目中，这里应该从安全上下文（如Spring Security）中获取当前用户
        // 为简化起见，我们先假设一个方法能获取到当前用户
        return authService.getCurrentUser();
    }

    /**
     * 注册或更新教师的人脸数据
     */
    @PostMapping("/register-face")
    public CommonResponse<?> registerFace(@RequestBody Map<String, String> payload) {
        String faceDescriptor = payload.get("faceDescriptor");
        if (faceDescriptor == null || faceDescriptor.isEmpty()) {
            return CommonResponse.createForError("人脸数据不能为空");
        }
        return authService.updateFaceDescriptor(faceDescriptor);
    }
}

